﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.Services;

namespace SOA.services
{
    /// <summary>
    /// Summary description for FornecedorWS
    /// </summary>
    [WebService(Namespace = "http://tempuri.org/")]
    [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile1_1)]
    [System.ComponentModel.ToolboxItem(false)]
    // To allow this Web Service to be called from script, using ASP.NET AJAX, uncomment the following line. 
    // [System.Web.Script.Services.ScriptService]
    public class FornecedorWS : System.Web.Services.WebService
    {
        [WebMethod]
        public CotacaoFornecedor CotarFornecedorA(int qtdeHotDog1, int qtdeHotDog2, int qtdeRefri1, int qtdeRefri2)
        {
            var cotacao = new CotacaoFornecedor()
            {
                Codigo = Guid.NewGuid().ToString(),
                Data = DateTime.Now,                
                QtdeHotDog1 = qtdeHotDog1,
                QtdeHotDog2 = qtdeHotDog2,
                QtdeRefri1 = qtdeRefri1,
                QtdeRefri2 = qtdeRefri2,
                ValorHotDog1 = 2 * qtdeHotDog1,
                ValorHotDog2 = 3 * qtdeHotDog2,
                ValorRefri1 = 3 * qtdeRefri1,
                ValorRefri2 = 4 * qtdeRefri2
            };
            return cotacao;
        }

        [WebMethod]
        public CotacaoFornecedor CotarFornecedorB(int qtdeHotDog1, int qtdeHotDog2, int qtdeRefri1, int qtdeRefri2)
        {
            var cotacao = new CotacaoFornecedor()
            {
                Codigo = Guid.NewGuid().ToString(),
                Data = DateTime.Now,
                QtdeHotDog1 = qtdeHotDog1,
                QtdeHotDog2 = qtdeHotDog2,
                QtdeRefri1 = qtdeRefri1,
                QtdeRefri2 = qtdeRefri2,
                ValorHotDog1 = 1 * qtdeHotDog1,
                ValorHotDog2 = 2 * qtdeHotDog2,
                ValorRefri1 = 2 * qtdeRefri1,
                ValorRefri2 = 3 * qtdeRefri2
            };
            return cotacao;
        }

        [WebMethod]
        public CotacaoFornecedor CotarFornecedorC(int qtdeHotDog1, int qtdeHotDog2, int qtdeRefri1, int qtdeRefri2)
        {
            var cotacao = new CotacaoFornecedor()
            {
                Codigo = Guid.NewGuid().ToString(),
                Data = DateTime.Now,
                QtdeHotDog1 = qtdeHotDog1,
                QtdeHotDog2 = qtdeHotDog2,
                QtdeRefri1 = qtdeRefri1,
                QtdeRefri2 = qtdeRefri2,
                ValorHotDog1 = 3 * qtdeHotDog1,
                ValorHotDog2 = 5 * qtdeHotDog2,
                ValorRefri1 = 4 * qtdeRefri1,
                ValorRefri2 = 5 * qtdeRefri2
            };
            return cotacao;
        }

        [WebMethod]
        public CompraFornecedor ComprarFornecedorA(CotacaoFornecedor cotacao)
        {
            var compra = new CompraFornecedor()
            {
                Codigo = Guid.NewGuid().ToString(),
                Data = DateTime.Now,
                QtdeHotDog1 = cotacao.QtdeHotDog1,
                QtdeHotDog2 = cotacao.QtdeHotDog2,
                QtdeRefri1 = cotacao.QtdeRefri1,
                QtdeRefri2 = cotacao.QtdeRefri2,
                ValorHotDog1 = cotacao.ValorHotDog1,
                ValorHotDog2 = cotacao.ValorHotDog2,
                ValorRefri1 = cotacao.ValorRefri1,
                ValorRefri2 = cotacao.ValorRefri2
            };
            return compra;
        }

        [WebMethod]
        public CompraFornecedor ComprarFornecedorB(CotacaoFornecedor cotacao)
        {
            var compra = new CompraFornecedor()
            {
                Codigo = Guid.NewGuid().ToString(),
                Data = DateTime.Now,
                QtdeHotDog1 = cotacao.QtdeHotDog1,
                QtdeHotDog2 = cotacao.QtdeHotDog2,
                QtdeRefri1 = cotacao.QtdeRefri1,
                QtdeRefri2 = cotacao.QtdeRefri2,
                ValorHotDog1 = cotacao.ValorHotDog1,
                ValorHotDog2 = cotacao.ValorHotDog2,
                ValorRefri1 = cotacao.ValorRefri1,
                ValorRefri2 = cotacao.ValorRefri2
            };
            return compra;
        }

        [WebMethod]
        public CompraFornecedor ComprarFornecedorC(CotacaoFornecedor cotacao)
        {
            var compra = new CompraFornecedor()
            {
                Codigo = Guid.NewGuid().ToString(),
                Data = DateTime.Now,
                QtdeHotDog1 = cotacao.QtdeHotDog1,
                QtdeHotDog2 = cotacao.QtdeHotDog2,
                QtdeRefri1 = cotacao.QtdeRefri1,
                QtdeRefri2 = cotacao.QtdeRefri2,
                ValorHotDog1 = cotacao.ValorHotDog1,
                ValorHotDog2 = cotacao.ValorHotDog2,
                ValorRefri1 = cotacao.ValorRefri1,
                ValorRefri2 = cotacao.ValorRefri2
            };
            return compra;
        }

    }
    public class CotacaoFornecedor
    {
        public DateTime Data { get; set; }
        public String Codigo { get; set; }       
        public int QtdeHotDog1 { get; set; }
        public int QtdeHotDog2 { get; set; }
        public int QtdeRefri1 { get; set; }
        public int QtdeRefri2 { get; set; }
        public decimal ValorHotDog1 { get; set; }
        public decimal ValorHotDog2 { get; set; }
        public decimal ValorRefri1 { get; set; }
        public decimal ValorRefri2 { get; set; }
    }

    public class CompraFornecedor
    {
        public DateTime Data { get; set; }
        public String Codigo { get; set; }
        public int QtdeHotDog1 { get; set; }
        public int QtdeHotDog2 { get; set; }
        public int QtdeRefri1 { get; set; }
        public int QtdeRefri2 { get; set; }
        public decimal ValorHotDog1 { get; set; }
        public decimal ValorHotDog2 { get; set; }
        public decimal ValorRefri1 { get; set; }
        public decimal ValorRefri2 { get; set; }
    }
}
